package com.itheima.tanhua.api;

import com.itheima.tanhua.mongo.Comment;
import com.itheima.tanhua.mongo.Video;
import com.itheima.tanhua.vo.PageResult;

import java.util.List;

/**
 * @author Lff
 * @date 2022/4/3
 * <p>
 * 视频信息保存
 */
public interface VideoApi {
    /**
     * 保存记录
     *
     * @param video
     * @return
     */
    String save(Video video);

    /**
     * 根据vid查询推荐视频，如果vid为null
     * <p>
     * 按照时间排序查询最新的数据
     *
     * @param vidList
     * @return
     */
    List<Video> getRecommendVideoList(List<Long> vidList, Integer page, Integer pagesize);

    /**
     * 发布顶视频评论 点赞 喜欢
     *
     * @param c
     * @return
     */
    Integer publishAll(Comment c);

    /**
     * 取消点赞。。喜欢 (删除评论)
     *
     * @param comment
     * @return
     */
    Integer removeAll(Comment comment);


    /**
     * @param page      页码
     * @param pagesize  页尺寸
     * @param uid       用户id
     * @param sortProp  排序字段
     * @param sortOrder 排序规则
     * @return
     */
    PageResult findUserVideos(Integer page, Integer pagesize, Long uid, String sortProp, String sortOrder);
}
